Skip to content

Conversation

@samueltardieu
Copy link
Member

@samueltardieu samueltardieu commented Nov 19, 2025

changelog: [multiple_unsafe_ops_per_block]: do not trigger on code expanded from external macros

Fixes #16116

r? Jarcho

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties label Nov 19, 2025
@github-actions
Copy link

Lintcheck changes for e7ee98d

Lint Added Removed Changed
clippy::multiple_unsafe_ops_per_block 0 1 3

This comment will be updated if you push new changes

@Jarcho
Copy link
Contributor

Jarcho commented Nov 19, 2025

The actual issue is nested unsafe blocks, not macros. I feel like we should be skipping them.

unsafe f1() {}
unsafe f2() {}

fn f3() {
  unsafe {
    f1();
    unsafe { f2(); }
  }
}

This only has one unsafe operation in each block, just one of them happens to be nested in another.


We should still be considering a macro call to be a single thing. A macro expanding to multiple unsafe calls without an unsafe block shouldn't trigger the lint.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties

Projects

None yet

Development

Successfully merging this pull request may close these issues.

multiple_unsafe_ops_per_block triggering for format! on nightly

3 participants